package drongo.desktop.undo
{
	/**
	 * @author 蝈蝈
	 */
	public interface IOperation
	{
		/**
		 * 执行
		 * @param data
		 */
		function execute():void;
		/**
		 *重做
		 */
		function redo():void;
		/**
		 *撤销
		 */
		function undo():void;
		/**
		 * 彻底销毁该命令 
		 */
		function destroy():void;
		/**
		 * 数据 
		 * @return 
		 */		
		function get data():Object;
		function set data(value:Object):void;
		
		/**
		 * 所属容器
		 */
		function get context():*;
		function set context(value:*):void;
	}
}